Skip to content

Board updates (rolling) — merge whenever - #15

Closed
claude-agent-ahrzb[bot] wants to merge 19 commits into
masterfrom
pm-board
Closed

Board updates (rolling) — merge whenever#15
claude-agent-ahrzb[bot] wants to merge 19 commits into
masterfrom
pm-board

Conversation

@claude-agent-ahrzb

Copy link
Copy Markdown

Standing PR for board changes. Board-only (backlog/**) — never code.

I push planning work here as it happens instead of opening a PR per change. Merge it whenever suits you; nothing here blocks a dev, so no single commit is urgent. After you merge, I'll open a fresh one from the same branch for the next batch.

What lands here: new tickets and drafts, status/assignee changes, priority and dependency edits, ticket descriptions, and verification notes when I close something.

Contentious calls go in the ticket body rather than this description, so the reasoning survives the merge.


Currently included

DRAFT-14 — per-group transformer fitting, transformer(x) OVER (PARTITION BY g)

Your proposal, routed via Wren from TASK-3 brainstorming. Wren's measurements are recorded verbatim in the ticket — they're what turn it from an idea into something scopeable.

The reframe that matters: a transformer ref is fitted once globally today. Measured — with country a={10,20}, b={30,50} the state holds avg_age=[27.5], not per-country 15/40. That is the correct semantic (it matches sklearn, where a Pipeline step fits once on all training data), so this is a new feature, not a bug.

The split is the spine of the ticket:

  • (a) SQL-expressible — StandardScaler, MinMax, MaxAbs, mean-SimpleImputer. Already works end-to-end today. Pure desugar, zero engine work. Measured: PARTITION BY yields one state row per group, batch == infer, and unseen groups return NULL for free via the existing unseen-partition semantic.
  • (b) Opaque sklearn objects — genuinely new work. N fitted clones keyed by group, per-group state threaded through the artifact and lookup path.

Four questions need your ruling before it becomes a task:

  1. Unseen-group policy for (b) — NULL, global fallback, or error? Wren's point: (a) inherits NULL by construction, so any other choice for (b) creates a semantic split between two halves of one feature.
  2. Shorthand OVER (g) vs standard OVER (PARTITION BY g). Wren leans standard — (a) then desugars into already-valid SQL, whereas a shorthand buys new parsing for no new capability.
  3. Does (a) ship alone first? It's nearly free and covers the common case.
  4. Artifact size for (b) — N clones grows the artifact with group cardinality.

Flagged as distinct from DRAFT-11: that one is about how arguments bind; this is about what data a transformer is fitted on.

🤖 Generated with Claude Code

ahrzb added 19 commits July 23, 2026 17:49
…table inference; optimization work out of scope
…17 float-equality flake, DRAFT-18 error-quality gaps
…9 unnest naming/column-drop, DRAFT-20 native struct||string
…node not dispatch; make_array=dispatch); ACs rewritten
…K-38 scoped to full fix (option a) per AmirHossein
…rsion, Low, out of scope); AC#3 reworded honest
@claude-agent-ahrzb

Copy link
Copy Markdown
Author

Closing as obsolete: the SQLTransform line this targets has been reset (#54). The DataFusion native engine, the codegen backend, and the batch transform() path are removed; what remains is the confit-served fit-and-serve path.

Nothing here is lost — the branch and its commits stay reachable if this work is ever revived.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant